package jpa.entitys.promis.common;

import java.io.Serializable;

import javax.persistence.*;

import java.math.BigDecimal;
import java.util.Date;

import jpa.entitys.common.CommonEntity;


/**
 * The persistent class for the COST_PROJECT_UNIT database table.
 * 
 */
@Entity
@Table(name="COST_PROJECT_UNIT")
@NamedQueries({
    @NamedQuery(name = "CostProjectUnit.findAll", query = " SELECT c FROM CostProjectUnit c "),
    @NamedQuery(name = "CostProjectUnit.findById", query = " SELECT c FROM CostProjectUnit c WHERE c.id = :Id ")
})
public class CostProjectUnit extends CommonEntity implements Serializable {
	private static final long serialVersionUID = 1L;

	@EmbeddedId
	private CostProjectUnitPK id;
	
	@Override public String toString() { return org.apache.commons.lang.builder.ToStringBuilder.reflectionToString(this);}

	@Column(name="ALPHABET_TYPE", length=1)
	private String alphabetType;

	@Column(precision=22)
	private BigDecimal area;

	@Column(name="ATTRIBUTE_LAND_PRICE_SQW", precision=22)
	private BigDecimal attributeLandPriceSqw;

	@Column(name="BALCONY_AREA", precision=22)
	private BigDecimal balconyArea;

	@Column(name="BASE_LAND_PRICE_SQW", precision=22)
	private BigDecimal baseLandPriceSqw;

	@Column(name="CONS_STATUS", length=1)
	private String consStatus;

	@Column(name="CONTRACT_PERIOD", precision=22)
	private BigDecimal contractPeriod;

	@Column(name="CONTRACT_PERIOD_UM")
	private String contractPeriodUm;

    @Temporal( TemporalType.TIMESTAMP)
	@Column(name="CONTRACT_START_DATE")
	private Date contractStartDate;

	@Column(name="COST_PROJECT_UNIT_ID", length=100)
	private String costProjectUnitId;

	@Column(name="CREATED_BY")
	private String createdBy;

    @Temporal( TemporalType.TIMESTAMP)
	@Column(name="CREATED_ON")
	private Date createdOn;

	@Column(length=300)
	private String description;

	@Column(name="FENCE_COST", precision=22)
	private BigDecimal fenceCost;

	@Column(name="FINAL_AREA", precision=22)
	private BigDecimal finalArea;

	@Column(length=100)
	private String foreman;

	@Column(name="GEN_ALPHABET", length=10)
	private String genAlphabet;

	@Column(name="GEN_DESCRIPTION", length=300)
	private String genDescription;

	@Column(name="GEN_FLR_DIGIT", precision=22)
	private BigDecimal genFlrDigit;

	@Column(name="GEN_FLR_POSITION", length=6)
	private String genFlrPosition;

	@Column(name="GEN_FLR_START", precision=22)
	private BigDecimal genFlrStart;

	@Column(name="GEN_FORMAT", length=30)
	private String genFormat;

	@Column(name="GEN_INCLUDE_FLR", length=1)
	private String genIncludeFlr;

	@Column(name="GEN_INCLUDE_UNIT", length=300)
	private String genIncludeUnit;

	@Column(name="GEN_NUMBER", precision=22)
	private BigDecimal genNumber;

	@Column(name="GEN_PREFIX", length=30)
	private String genPrefix;

	@Column(name="GEN_SUFFIX", length=30)
	private String genSuffix;

	@Column(name="GEN_UNIT_POSITION", length=30)
	private String genUnitPosition;

	@Column(name="GENERATE_TYPE", length=1)
	private String generateType;

	@Column(name="HOUSE_PRICE", precision=22)
	private BigDecimal housePrice;

	@Column(name="HOUSE_PRICE_PER_SQM", precision=22)
	private BigDecimal housePricePerSqm;

	@Column(name="LABOUR_COST", precision=22)
	private BigDecimal labourCost;

	@Column(name="LAND_PRICE", precision=22)
	private BigDecimal landPrice;

	@Column(name="LAND_PRICE_SQW", precision=22)
	private BigDecimal landPriceSqw;

	@Column(name="LAND_SQM", precision=22)
	private BigDecimal landSqm;

	@Column(name="LAND_SQW", precision=22)
	private BigDecimal landSqw;

	@Column(name="LAST_UPD_BY")
	private String lastUpdBy;

    @Temporal( TemporalType.TIMESTAMP)
	@Column(name="LAST_UPD_ON")
	private Date lastUpdOn;

	@Column(name="LINK_ID", precision=22)
	private BigDecimal linkId;

	@Column(name="LIVING_AREA", precision=22)
	private BigDecimal livingArea;

	@Column(name="MAIN_AREA", precision=22)
	private BigDecimal mainArea;

	@Column(name="MARGIN_PER_UNIT", precision=22)
	private BigDecimal marginPerUnit;

	@Column(name="MATERIAL_COST", precision=22)
	private BigDecimal materialCost;

	@Column(name="MODEL_CODE", length=30)
	private String modelCode;

	@Column(name="ORIGIN_LAND_SQW", precision=22)
	private BigDecimal originLandSqw;

	@Column(name="OTHER_AREA", precision=22)
	private BigDecimal otherArea;

	@Column(name="PLAN_NUMBER", length=30)
	private String planNumber;

	@Column(name="PRICE_SQM", precision=16, scale=2)
	private BigDecimal priceSqm;

	@Column(name="PRODUCT_CODE", length=30)
	private String productCode;

	@Column(name="PROMOTION_COST", precision=22)
	private BigDecimal promotionCost;

	@Column(name="PROPERTY_TYPE_CODE", length=30)
	private String propertyTypeCode;

	@Column(precision=22)
	private BigDecimal revision;

	@Column(name="SALE_PRICE", precision=22)
	private BigDecimal salePrice;

	@Column(name="SALE_STATUS", length=1)
	private String saleStatus;

	@Column(name="SEQ_NO", precision=22)
	private BigDecimal seqNo;

	@Column(name="STANDARD_COST_MARKUP", precision=22)
	private BigDecimal standardCostMarkup;

    @Temporal( TemporalType.TIMESTAMP)
	@Column(name="START_DATE")
	private Date startDate;

	@Column(name="SYNC_CREATEDBY", length=100)
	private String syncCreatedby;

    @Temporal( TemporalType.TIMESTAMP)
	@Column(name="SYNC_CREATEDON")
	private Date syncCreatedon;

	@Column(name="SYNC_EXTERNAL_REF_KEY", length=100)
	private String syncExternalRefKey;

	@Column(name="SYNC_EXTERNAL_REF_NO", length=100)
	private String syncExternalRefNo;

	@Column(name="SYNC_ISSTAGING", length=1)
	private String syncIsstaging;

	@Column(name="SYNC_ISSYNC", length=1)
	private String syncIssync;

	@Column(name="SYNC_UPDATEDBY", length=100)
	private String syncUpdatedby;

    @Temporal( TemporalType.TIMESTAMP)
	@Column(name="SYNC_UPDATEDON")
	private Date syncUpdatedon;

	@Column(name="TOTAL_CONTRACTOR", precision=22)
	private BigDecimal totalContractor;

	@Column(name="TOTAL_COST", precision=22)
	private BigDecimal totalCost;

	@Column(name="TOTAL_DEVELOPER", precision=22)
	private BigDecimal totalDeveloper;

	@Column(name="TOTAL_PRICE", precision=22)
	private BigDecimal totalPrice;

	@Column(name="UNIT_ID", length=10)
	private String unitId;

	@Column(name="UNIT_TYPE", length=1)
	private String unitType;
	
	@Column(name="IS_INTERFACE")
	private String isInterface;

	public String getIsInterface() {
		return isInterface;
	}

	public void setIsInterface(String isInterface) {
		this.isInterface = isInterface;
	}

    public CostProjectUnit() {
    }

	public CostProjectUnitPK getId() {
		return this.id;
	}

	public void setId(CostProjectUnitPK id) {
		this.id = id;
	}
	
	public String getAlphabetType() {
		return this.alphabetType;
	}

	public void setAlphabetType(String alphabetType) {
		this.alphabetType = alphabetType;
	}

	public BigDecimal getArea() {
		return this.area;
	}

	public void setArea(BigDecimal area) {
		this.area = area;
	}

	public BigDecimal getAttributeLandPriceSqw() {
		return this.attributeLandPriceSqw;
	}

	public void setAttributeLandPriceSqw(BigDecimal attributeLandPriceSqw) {
		this.attributeLandPriceSqw = attributeLandPriceSqw;
	}

	public BigDecimal getBalconyArea() {
		return this.balconyArea;
	}

	public void setBalconyArea(BigDecimal balconyArea) {
		this.balconyArea = balconyArea;
	}

	public BigDecimal getBaseLandPriceSqw() {
		return this.baseLandPriceSqw;
	}

	public void setBaseLandPriceSqw(BigDecimal baseLandPriceSqw) {
		this.baseLandPriceSqw = baseLandPriceSqw;
	}

	public String getConsStatus() {
		return this.consStatus;
	}

	public void setConsStatus(String consStatus) {
		this.consStatus = consStatus;
	}

	public BigDecimal getContractPeriod() {
		return this.contractPeriod;
	}

	public void setContractPeriod(BigDecimal contractPeriod) {
		this.contractPeriod = contractPeriod;
	}

	public String getContractPeriodUm() {
		return this.contractPeriodUm;
	}

	public void setContractPeriodUm(String contractPeriodUm) {
		this.contractPeriodUm = contractPeriodUm;
	}

	public Date getContractStartDate() {
		return this.contractStartDate;
	}

	public void setContractStartDate(Date contractStartDate) {
		this.contractStartDate = contractStartDate;
	}

	public String getCostProjectUnitId() {
		return this.costProjectUnitId;
	}

	public void setCostProjectUnitId(String costProjectUnitId) {
		this.costProjectUnitId = costProjectUnitId;
	}

	public String getCreatedBy() {
		return this.createdBy;
	}

	public void setCreatedBy(String createdBy) {
		this.createdBy = createdBy;
	}

	public Date getCreatedOn() {
		return this.createdOn;
	}

	public void setCreatedOn(Date createdOn) {
		this.createdOn = createdOn;
	}

	public String getDescription() {
		return this.description;
	}

	public void setDescription(String description) {
		this.description = description;
	}

	public BigDecimal getFenceCost() {
		return this.fenceCost;
	}

	public void setFenceCost(BigDecimal fenceCost) {
		this.fenceCost = fenceCost;
	}

	public BigDecimal getFinalArea() {
		return this.finalArea;
	}

	public void setFinalArea(BigDecimal finalArea) {
		this.finalArea = finalArea;
	}

	public String getForeman() {
		return this.foreman;
	}

	public void setForeman(String foreman) {
		this.foreman = foreman;
	}

	public String getGenAlphabet() {
		return this.genAlphabet;
	}

	public void setGenAlphabet(String genAlphabet) {
		this.genAlphabet = genAlphabet;
	}

	public String getGenDescription() {
		return this.genDescription;
	}

	public void setGenDescription(String genDescription) {
		this.genDescription = genDescription;
	}

	public BigDecimal getGenFlrDigit() {
		return this.genFlrDigit;
	}

	public void setGenFlrDigit(BigDecimal genFlrDigit) {
		this.genFlrDigit = genFlrDigit;
	}

	public String getGenFlrPosition() {
		return this.genFlrPosition;
	}

	public void setGenFlrPosition(String genFlrPosition) {
		this.genFlrPosition = genFlrPosition;
	}

	public BigDecimal getGenFlrStart() {
		return this.genFlrStart;
	}

	public void setGenFlrStart(BigDecimal genFlrStart) {
		this.genFlrStart = genFlrStart;
	}

	public String getGenFormat() {
		return this.genFormat;
	}

	public void setGenFormat(String genFormat) {
		this.genFormat = genFormat;
	}

	public String getGenIncludeFlr() {
		return this.genIncludeFlr;
	}

	public void setGenIncludeFlr(String genIncludeFlr) {
		this.genIncludeFlr = genIncludeFlr;
	}

	public String getGenIncludeUnit() {
		return this.genIncludeUnit;
	}

	public void setGenIncludeUnit(String genIncludeUnit) {
		this.genIncludeUnit = genIncludeUnit;
	}

	public BigDecimal getGenNumber() {
		return this.genNumber;
	}

	public void setGenNumber(BigDecimal genNumber) {
		this.genNumber = genNumber;
	}

	public String getGenPrefix() {
		return this.genPrefix;
	}

	public void setGenPrefix(String genPrefix) {
		this.genPrefix = genPrefix;
	}

	public String getGenSuffix() {
		return this.genSuffix;
	}

	public void setGenSuffix(String genSuffix) {
		this.genSuffix = genSuffix;
	}

	public String getGenUnitPosition() {
		return this.genUnitPosition;
	}

	public void setGenUnitPosition(String genUnitPosition) {
		this.genUnitPosition = genUnitPosition;
	}

	public String getGenerateType() {
		return this.generateType;
	}

	public void setGenerateType(String generateType) {
		this.generateType = generateType;
	}

	public BigDecimal getHousePrice() {
		return this.housePrice;
	}

	public void setHousePrice(BigDecimal housePrice) {
		this.housePrice = housePrice;
	}

	public BigDecimal getHousePricePerSqm() {
		return this.housePricePerSqm;
	}

	public void setHousePricePerSqm(BigDecimal housePricePerSqm) {
		this.housePricePerSqm = housePricePerSqm;
	}

	public BigDecimal getLabourCost() {
		return this.labourCost;
	}

	public void setLabourCost(BigDecimal labourCost) {
		this.labourCost = labourCost;
	}

	public BigDecimal getLandPrice() {
		return this.landPrice;
	}

	public void setLandPrice(BigDecimal landPrice) {
		this.landPrice = landPrice;
	}

	public BigDecimal getLandPriceSqw() {
		return this.landPriceSqw;
	}

	public void setLandPriceSqw(BigDecimal landPriceSqw) {
		this.landPriceSqw = landPriceSqw;
	}

	public BigDecimal getLandSqm() {
		return this.landSqm;
	}

	public void setLandSqm(BigDecimal landSqm) {
		this.landSqm = landSqm;
	}

	public BigDecimal getLandSqw() {
		return this.landSqw;
	}

	public void setLandSqw(BigDecimal landSqw) {
		this.landSqw = landSqw;
	}

	public String getLastUpdBy() {
		return this.lastUpdBy;
	}

	public void setLastUpdBy(String lastUpdBy) {
		this.lastUpdBy = lastUpdBy;
	}

	public Date getLastUpdOn() {
		return this.lastUpdOn;
	}

	public void setLastUpdOn(Date lastUpdOn) {
		this.lastUpdOn = lastUpdOn;
	}

	public BigDecimal getLinkId() {
		return this.linkId;
	}

	public void setLinkId(BigDecimal linkId) {
		this.linkId = linkId;
	}

	public BigDecimal getLivingArea() {
		return this.livingArea;
	}

	public void setLivingArea(BigDecimal livingArea) {
		this.livingArea = livingArea;
	}

	public BigDecimal getMainArea() {
		return this.mainArea;
	}

	public void setMainArea(BigDecimal mainArea) {
		this.mainArea = mainArea;
	}

	public BigDecimal getMarginPerUnit() {
		return this.marginPerUnit;
	}

	public void setMarginPerUnit(BigDecimal marginPerUnit) {
		this.marginPerUnit = marginPerUnit;
	}

	public BigDecimal getMaterialCost() {
		return this.materialCost;
	}

	public void setMaterialCost(BigDecimal materialCost) {
		this.materialCost = materialCost;
	}

	public String getModelCode() {
		return this.modelCode;
	}

	public void setModelCode(String modelCode) {
		this.modelCode = modelCode;
	}

	public BigDecimal getOriginLandSqw() {
		return this.originLandSqw;
	}

	public void setOriginLandSqw(BigDecimal originLandSqw) {
		this.originLandSqw = originLandSqw;
	}

	public BigDecimal getOtherArea() {
		return this.otherArea;
	}

	public void setOtherArea(BigDecimal otherArea) {
		this.otherArea = otherArea;
	}

	public String getPlanNumber() {
		return this.planNumber;
	}

	public void setPlanNumber(String planNumber) {
		this.planNumber = planNumber;
	}

	public BigDecimal getPriceSqm() {
		return this.priceSqm;
	}

	public void setPriceSqm(BigDecimal priceSqm) {
		this.priceSqm = priceSqm;
	}

	public String getProductCode() {
		return this.productCode;
	}

	public void setProductCode(String productCode) {
		this.productCode = productCode;
	}

	public BigDecimal getPromotionCost() {
		return this.promotionCost;
	}

	public void setPromotionCost(BigDecimal promotionCost) {
		this.promotionCost = promotionCost;
	}

	public String getPropertyTypeCode() {
		return this.propertyTypeCode;
	}

	public void setPropertyTypeCode(String propertyTypeCode) {
		this.propertyTypeCode = propertyTypeCode;
	}

	public BigDecimal getRevision() {
		return this.revision;
	}

	public void setRevision(BigDecimal revision) {
		this.revision = revision;
	}

	public BigDecimal getSalePrice() {
		return this.salePrice;
	}

	public void setSalePrice(BigDecimal salePrice) {
		this.salePrice = salePrice;
	}

	public String getSaleStatus() {
		return this.saleStatus;
	}

	public void setSaleStatus(String saleStatus) {
		this.saleStatus = saleStatus;
	}

	public BigDecimal getSeqNo() {
		return this.seqNo;
	}

	public void setSeqNo(BigDecimal seqNo) {
		this.seqNo = seqNo;
	}

	public BigDecimal getStandardCostMarkup() {
		return this.standardCostMarkup;
	}

	public void setStandardCostMarkup(BigDecimal standardCostMarkup) {
		this.standardCostMarkup = standardCostMarkup;
	}

	public Date getStartDate() {
		return this.startDate;
	}

	public void setStartDate(Date startDate) {
		this.startDate = startDate;
	}

	public String getSyncCreatedby() {
		return this.syncCreatedby;
	}

	public void setSyncCreatedby(String syncCreatedby) {
		this.syncCreatedby = syncCreatedby;
	}

	public Date getSyncCreatedon() {
		return this.syncCreatedon;
	}

	public void setSyncCreatedon(Date syncCreatedon) {
		this.syncCreatedon = syncCreatedon;
	}

	public String getSyncExternalRefKey() {
		return this.syncExternalRefKey;
	}

	public void setSyncExternalRefKey(String syncExternalRefKey) {
		this.syncExternalRefKey = syncExternalRefKey;
	}

	public String getSyncExternalRefNo() {
		return this.syncExternalRefNo;
	}

	public void setSyncExternalRefNo(String syncExternalRefNo) {
		this.syncExternalRefNo = syncExternalRefNo;
	}

	public String getSyncIsstaging() {
		return this.syncIsstaging;
	}

	public void setSyncIsstaging(String syncIsstaging) {
		this.syncIsstaging = syncIsstaging;
	}

	public String getSyncIssync() {
		return this.syncIssync;
	}

	public void setSyncIssync(String syncIssync) {
		this.syncIssync = syncIssync;
	}

	public String getSyncUpdatedby() {
		return this.syncUpdatedby;
	}

	public void setSyncUpdatedby(String syncUpdatedby) {
		this.syncUpdatedby = syncUpdatedby;
	}

	public Date getSyncUpdatedon() {
		return this.syncUpdatedon;
	}

	public void setSyncUpdatedon(Date syncUpdatedon) {
		this.syncUpdatedon = syncUpdatedon;
	}

	public BigDecimal getTotalContractor() {
		return this.totalContractor;
	}

	public void setTotalContractor(BigDecimal totalContractor) {
		this.totalContractor = totalContractor;
	}

	public BigDecimal getTotalCost() {
		return this.totalCost;
	}

	public void setTotalCost(BigDecimal totalCost) {
		this.totalCost = totalCost;
	}

	public BigDecimal getTotalDeveloper() {
		return this.totalDeveloper;
	}

	public void setTotalDeveloper(BigDecimal totalDeveloper) {
		this.totalDeveloper = totalDeveloper;
	}

	public BigDecimal getTotalPrice() {
		return this.totalPrice;
	}

	public void setTotalPrice(BigDecimal totalPrice) {
		this.totalPrice = totalPrice;
	}

	public String getUnitId() {
		return this.unitId;
	}

	public void setUnitId(String unitId) {
		this.unitId = unitId;
	}

	public String getUnitType() {
		return this.unitType;
	}

	public void setUnitType(String unitType) {
		this.unitType = unitType;
	}

}